package com.crm.miaohe.service;

import com.crm.miaohe.controller.PageResponse;
import com.crm.miaohe.controller.strategy.request.MultiPriceStrategyParams;
import com.crm.miaohe.controller.strategy.request.PriceStrategyParams;
import com.crm.miaohe.controller.strategy.request.PriceStrategyQueryParams;
import com.crm.miaohe.controller.strategy.response.PriceStrategyDetail;
import com.crm.miaohe.controller.strategy.response.PriceStrategyItemGroup;
import com.crm.miaohe.model.TblPriceStrategy;

import java.util.List;

public interface PriceStrategyService {
    List<PriceStrategyItemGroup> strategyItems(Long strategyId);
    List<TblPriceStrategy> strategies(Boolean approved);
    List<TblPriceStrategy> defaultStrategies();
    PageResponse<TblPriceStrategy> getPriceStrategies(PriceStrategyQueryParams params);
    PriceStrategyDetail getStrategyDetail(Long strategyId);
    void addPriceStrategy(PriceStrategyParams params);
    void copyPriceStrategy(PriceStrategyParams params);
    void updatePriceStrategy(PriceStrategyParams params);
    void updateMultiPriceStrategy(MultiPriceStrategyParams params);
    void updateMultiMoqStrategy(MultiPriceStrategyParams params);
    void updateMultiStopSellStrategy(MultiPriceStrategyParams params);
    List<String> updatePriceStrategyCategoryCode();
    void deletePriceStrategy(Long strategyId);
    void approvedPriceStrategy(Long strategyId);
}
